package com.ht.constant;

import org.springframework.http.MediaType;

import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author hejialun
 * @ClassName FileConstant
 * @description: TODO（文件常量）
 * @Date: 2024/6/17 10:41
 */
public class FileConstant {
    /**
     * 文件预览方案-针对不同文件预览方案不同
     */
    public static final Map<String, MediaType> mediaTypeMap  = new HashMap<String, MediaType>() {
        {
            put("jpg", MediaType.IMAGE_JPEG);
            put("jpeg", MediaType.IMAGE_JPEG);
            put("png", MediaType.IMAGE_PNG);
            put("pdf", MediaType.APPLICATION_PDF);
            put("txt", MediaType.TEXT_XML);
        }
    };

    /**
     * 文件预览方案-针对不同文件预览方案不同
     */
    public static final Map<String, String> FILE_VIEW_WAY = new HashMap<String, String>() {
        {
            put("docx", "onlyOffice.html");
            put("ppt", "onlyOffice.html");
            put("xlsx", "onlyOffice.html");
            put("txt", "onlyOffice.html");
            put("jpg", "imgView.html");
            put("png", "imgView.html");
            put("jpeg", "imgView.html");
            put("pdf", "pdfView.html");
        }
    };

    /**
     * 文件编辑方案-针对不同文件预览方案不同
     */
    public static final Map<String, String> FILE_EDIT_WAY = new HashMap<String, String>() {
        {
            put("docx", "onlyOffice.html");
            put("ppt", "onlyOffice.html");
            put("xlsx", "onlyOffice.html");
        }
    };

    /**
     * 支持解压的文件类型
     */
    public static final List<String> FILE_DECOMPRESSION_WAY = Arrays.asList("zip", "rar");


    /**
     * 对文件没有操作权限
     */
    public static final String NO_FILE_AUTH="文件不存在或文件没有操作权限";

    /**
     * 文件下载失败
     */
    public static final String DOWNLOAD_FILE_LOSE="文件下载失败，请联系管理员";


    /**
     * 对文件没有操作权限
     */
    public static final String FILE_NO_EXIST="文件不存在!";

    /**
     * 文件类型不支持
     */
    public static final String FILE_NO_SUPPORT="文件类型不支持!";

    /**
     * 文件类型不支持解压
     */
    public static final String FILE_NO_DECOMPRESSION="文件类型不支持解压!";

    /**
     * 文件复制失败
     */
    public static final String FILE_COPY_FAIL = "文件复制失败，请联系管理员";

    /**
     * 文件解压失败
     */
    public static final String FILE_DECOMPRESSION_FAIL = "文件解压失败，请联系管理员";
}
